This invention relates to the portability of code and data structures, and more particularly to the portability of kernel level code functionality using the selected code and data structures to selected operating systems.
Today's burgeoning technology has led to increased automation of factories and other commercial installations. One particular field which is becoming increasingly automated is commercial and industrial process control installations. Modem process control installations typically employ a number of sensors, actuators and other peripheral devices to monitor and to control industrial processes. For example, the sensors might evaluate the suitability of raw materials or monitor the process flow thereof and provide feedback data regarding these and other important parameters. These sensors are typically coupled to one or more processors of a process control system to store data and to generate system control signals in response to the acquired process control data. These processors are typically operated by an operating system which enable the computer to communicate with the process control devices. Representative operating systems include UNIX, DOS, Windows NT, Windows, Solaris SVR4, Microware OS9, and Sun OS.
The installations employing such process control structure also employ commercially available software to facilitate the interfacing of the process control devices with the operating system of the processors of the process control system. This software is not directly integratable with all existing operating systems, however, and thus may have to be customized for a particular operating system by an experienced programmer. For instance, application software designed to operate in a UNIX environment may have to be customized, if at all possible, to operate in a Windows NT or SunOS operating environment. This, of course, increases the total costs associated with installing and operating the automated process control system.
Application programs exist which can interpret a set of software instructions for a first operating system, for example, UNIX, so that they are executable on a second operating system, for example, Windows NT. A known product that performs this type of conversion is the NutCracker software product from Data Focus, U.S.A. This product, however, only allows the porting of software instructions to one particular operating system, and thus may not eliminate the need for an experienced programmer if the software is to be ported to another operating system, e.g., SunOS. Additionally, this software product only generates user level code that performs user level functions.
Due to the foregoing and other shortcomings of conventional application software products, an object of this invention is to provide a software product containing data structures that are portable to a variety of different operating systems.
Another object of this invention is to provide a software product that is relatively easily integratable with existing operating systems.
Other general and more specific objects of the invention will in part be obvious and will in part appear from the drawings and description which follow.